code block記法とtable記法を検知・分離する
これを使えば、細かい記法の解析を端折って、block毎に分割するだけのparserを作ることができる
こんな感じ
codeBlockとtableのobjectの一行目には、code:...やtable:...がそのまま入っている
言語名を識別したいときは、適宜正規表現を使って解析する
code:js
(async () => {
const {parse} = await import('/api/code/takker/code_block記法とtable記法を検知・分離する/script.js');
const {openJSON} = await import('/api/code/takker/javascriptでjsonファイルをweb_browserで開く/script.js');
openJSON(parse(scrapbox.Page.lines.map(({text}) => text).join('\n')));
})();
code:script.js
import {parseToRows, packRows} from '../scrapbox-parser@7.1.0/script.js';
export const parse = (text) => packRows(parseToRows(text), {hasTitle: true});